package com.wy.classloader;


import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * The interface Mq consumer adapter.
 * @author wangyong
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface ConsumerAdapter {

    /**
     * Type string.
     *
     * @return the string
     */
    String type() default "rabbitMq"; // 消息队列类型

    /**
     * Topic string.
     *
     * @return the string
     */
    String topic(); // 消息主题

    /**
     * Group string.
     *
     * @return the string
     */
    String group() default ""; // 消费组ID，仅在kafka和rocketmq中有效

    /**
     * Tag string.
     *
     * @return the string
     */
    String tag() default "*"; // 消息标签，仅在rocketmq中有效

    /**
     * 自动应答
     *
     * @return the boolean
     */
    boolean autoAck() default true;

    /**
     * 指定分区 kafka有效
     *
     * @return the int
     */
    String partition() default "";


}
